#include <stdio.h>

int main() {
    int m, n;

    // 读取迷宫的尺寸
    printf("请输入迷宫的尺寸（m 和 n）：");
    scanf("%d %d", &m, &n);

    // 声明两个二维数组来存储迷宫地图
    char maze1[100][100];
    char maze2[100][100];

    // 读取第一个迷宫地图
    printf("请输入第一个迷宫地图：\n");
    for (int i = 0; i < m; i++) {
        for (int j = 0; j < n; j++) {
            // 使用空格作为分隔符 忽略 换行符
            scanf(" %c", &maze1[i][j]);
        }
    }

    // 读取第二个迷宫地图
    printf("请输入第二个迷宫地图：\n");
    for (int i = 0; i < m; i++) {
        for (int j = 0; j < n; j++) {
            // 使用空格作为分隔符 忽略 换行符
            scanf(" %c", &maze2[i][j]);
        }
    }

    // 比较两个迷宫地图是否相同
    int areEqual = 1; // 假设两个迷宫地图相同
    for (int i = 0; i < m; i++) {
        for (int j = 0; j < n; j++) {
            if (maze1[i][j] != maze2[i][j]) {
                areEqual = 0; // 发现不同，设置为不同
                break;
            }
        }
        if (!areEqual) {
            break;
        }
    }

    // 输出结果
    if (areEqual) {
        printf("yes\n");
    } else {
        printf("no\n");
    }

    return 0;
}
